/**
 * Copyright (c) 2013-Now http://jeesite.com All rights reserved.
 */
package com.jeesite.modules.storage.dao;

import com.jeesite.common.dao.CrudDao;
import com.jeesite.common.mybatis.annotation.MyBatisDao;
import com.jeesite.modules.storage.entity.Category;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 分类DAO接口
 */
@MyBatisDao
public interface CategoryDao extends CrudDao<Category> {

    /**
     * 查找分类列表【全部】
     * @return 查找分类列表
     */
    public List<Category> findAllList();


    /**
     * 查找Id【名称】
     * @param name 名称
     * @return 查找Id
     */
    public String findIdByName(@Param("name") String name);

    /**
     * 统计汇总【总数】
     * @param isHot 是否热播
     * @param isSale 是否预告
     * @param isToday 是否今天
     * @param isYesterday 是否昨天
     * @param isEarlier 是否更早
     * @param isTomorrow 是否明天
     * @param isAfterTomorrow 是否后天
     * @return 统计汇总【总数】
     */
    Integer findActivityCount(@Param("isHot") Boolean isHot, @Param("isSale") Boolean isSale, @Param("isToday") Boolean isToday, @Param("isYesterday") Boolean isYesterday, @Param("isEarlier") Boolean isEarlier, @Param("isTomorrow") Boolean isTomorrow, @Param("isAfterTomorrow") Boolean isAfterTomorrow);

    /**
     * 统计汇总【分类】
     * @param isHot 是否热播
     * @param isSale 是否预告
     * @param isToday 是否今天
     * @param isYesterday 是否昨天
     * @param isEarlier 是否更早
     * @param isTomorrow 是否明天
     * @param isAfterTomorrow 是否后天
     * @return 统计汇总【分类】
     */
    List<Map> findActivities(@Param("isHot") Boolean isHot, @Param("isSale") Boolean isSale, @Param("isToday") Boolean isToday, @Param("isYesterday") Boolean isYesterday, @Param("isEarlier") Boolean isEarlier, @Param("isTomorrow") Boolean isTomorrow, @Param("isAfterTomorrow") Boolean isAfterTomorrow);
}